#ifndef CNATIVEHANDLERDUMMY_H
#define CNATIVEHANDLERDUMMY_H

#include "CNativeHandler.h"

#ifdef Q_OS_DUMMY

// This class has nothing to do with any native feature
class CNativeHandlerDummy : public CNativeHandler {
    Q_OBJECT
public:
    explicit CNativeHandlerDummy(QWidget *parent = nullptr);
    virtual ~CNativeHandlerDummy();

    friend class DummyNotifyFilter;

protected:
    bool m_moveEnable;
    bool m_resizeEnable;

    bool m_mousePressed;
    QPoint m_mousePoint;
    QRect m_mouseRect;

    QVector<bool> m_pressedArea;
    QVector<QRect> m_pressedRect;

    void showEventEx(QShowEvent *event) override;
    void windowStateChangeEventEx(QWindowStateChangeEvent *event) override;

    bool commonEventFilter(QEvent *event) override;

private:
    bool notifyFilter(QObject *obj, QEvent *event);
    bool dummyEventFilter(QEvent *event);
};

#endif

#endif // CNATIVEHANDLERDUMMY_H
